GSTL : the geostatistical template library in C þþ $
نویسندگان
چکیده
The development of geostatistics has been mostly accomplished by application-oriented engineers in the past 20 years. The focus on concrete applications gave birth to many algorithms and computer programs designed to address different issues, such as estimating or simulating a variable while possibly accounting for secondary information such as seismic data, or integrating geological and geometrical data. At the core of any geostatistical data integration methodology is a well-designed algorithm. Yet, despite their obvious differences, all these algorithms share many commonalities on which to build a geostatistics programming library, lest the resulting library is poorly reusable and difficult to expand. Building on this observation, we design a comprehensive, yet flexible and easily reusable library of geostatistics algorithms in Cþþ: The recent advent of the generic programming paradigm allows us elegantly to express the commonalities of the geostatistical algorithms into computer code. Generic programming, also referred to as ‘‘programming with concepts’’, provides a high level of abstraction without loss of efficiency. This last point is a major gain over object-oriented programming which often trades efficiency for abstraction. It is not enough for a numerical library to be reusable, it also has to be fast. Because generic programming is ‘‘programming with concepts’’, the essential step in the library design is the careful identification and thorough definition of these concepts shared by most geostatistical algorithms. Building on these definitions, a generic and expandable code can be developed. To show the advantages of such a generic library, we use GSTL to build two sequential simulation programs working on two different types of grids—a surface with faults and an unstructured grid—without requiring any change to the GSTL code. r 2002 Elsevier Science Ltd. All rights reserved.
منابع مشابه
Catatonia in Diagnostic and Statistical Manual of Mental Disorders, Fifth Edition.
Andrew Francis, PhD, MD,* Max Fink, MD,* Francisco Appiani, MD,Þ Aksel Bertelsen, MD,þ Tom G. Bolwig, MD, DMSc,§ Peter Bräunig, MD,|| Stanley N. Caroff, MD,¶ Brendan T. Carroll, MD,# Andrea Eugenio Cavanna, MD,** David Cohen, MD, PhD,ÞÞ Olivier Cottencin, MD, PhD,þþ Manuel J. Cuesta, MD,§§ Jessica Daniels, MD,|||| Dirk Dhossche, MD, PhD,¶¶ Gregory L. Fricchione, MD,## Gabor Gazdag, MD, PhD,*** ...
متن کاملFulminant type 1 diabetes during pregnancy in Chinese patients.
Urinalysis Glucose (þþ) (þþ) Ketone (þþ) (þþ) Protein (þ) ( ) Occult (þþ) (þþþ) CBC WBC (/L) 17.3 10 41.3 10 RBC (/L) 4.9 10 4.2 10 Hb (g/L) 142 133 Plt (/L) 438 10 387 10 Blood gas analysis pH 7.0 6.9 pO2 (mmHg) 104.6 76.9 pCO2 (mmHg) 11.3 11.9 HCO3 (mmol/L) 5.7 4.8 BE (mmol/L) 26.8 29.8 Blood chemistry Glu (mmol/L) 30.7 48.7 HbA1c (%) 5.7 6.5 TP (g/L) 87 56.3 Alb (g/L) 47.0 31.8 T-bil (mmol/L...
متن کاملParallel Extensions to the Matrix Template Library
We present the preliminary design for a C++ template library to enable the compositional construction of matrix classes suitable for high performance numerical linear algebra computations. The library based on our interface definition — the Matrix Template Library (MTL) — is written in C++ and consists of a small number of template classes that can be composed to represent commonly used matrix ...
متن کاملA Simple Generic Library for C
This paper presents Sglib, a C library freely inspired by the Standard Template Library (STL). In opposition to C++, the C language lacks any support for generic programming. Our library results from the idea to create a generic library of reusable algorithms through the C preprocessor.
متن کاملRationale for Adding Hash Tables to the C Standard Template Library
In Hash Tables for the Standard Template Library Barreiro Fraley and Musser propose a restructuring and extension of the STL requirements for associative containers to accommodate hash table implementations This paper gives the rationale for the proposed changes
متن کامل